﻿using System;
using System.Collections.Generic;
using System.Text;
using Strive.Interface.IDataAccessBase.DAO;
using Strive.DataAccess.Base.Model.PageObject;
using System.Collections;
using Strive.Aspects;
using Strive.Util.Text;
using Strive.Util.Logging;
using Strive.Core.Validations;
using Strive.Core.Service;
using Strive.Core.Translators;
using Strive.Util.Maths;
using Strive.Reflection;

using OTA.Notification.Interface.IDAO;
using Strive.DataAccess.Base.Model.SearcherObject;
using OTA.Notification.Entity.Terminal;

namespace OTA.Notification.Interface.IDAO.Terminal
{
    public interface IMsgTerminalConfigDao : IBaseDAOBean<int, MsgTerminalConfigBean>
    {


        /// <summary>
        /// 批量删除实体
        /// </summary>
        /// <param name="list">MsgAdapterConfigBeanBean集合</param>
        /// <returns>删除数目</returns>
        int DataDelete(IList<MsgTerminalConfigBean> list);

        /// <summary>
        /// 根据主键删除实体
        /// </summary>
        /// <param name="key">主键</param>
        /// <returns>删除数目</returns>
        int DataDelete(int key);

        /// <summary>
        /// 批量插入实体
        /// </summary>
        /// <param name="obj">MsgAdapterConfigBeanBean集合</param>
        /// <returns>影响行数</returns>
        int DataInsert(IList<MsgTerminalConfigBean> list);

        /// <summary>
        /// 批量更新实体
        /// </summary>
        /// <param name="obj">MsgAdapterConfigBeanBean集合</param>
        /// <returns>更新数目</returns>
        int DataUpdate(IList<MsgTerminalConfigBean> list);

        /// <summary>
        /// 分页查询
        /// </summary>
        /// <param name="pageObject">分页对象</param>
        /// <returns>集合</returns>
        /// <remarks>测试百万级数据在10秒内,比MSSQL2005分页性能要高</remarks>
        PageResult<MsgTerminalConfigBean> SelectPageList(BasePageSearch pageObject);

       

    }
}
